package entry

import "time"

type User struct {
	ID                int       `json:"id" gorm:"column:id"`
	Name              string    `json:"name" gorm:"column:name"`
	Password          string    `json:"password" gorm:"column:password"`
	OpenID            string    `json:"open_id" gorm:"column:openid"`
	Nick              string    `json:"nick" gorm:"column:nick"`
	Img               string    `json:"img" gorm:"column:img"`
	IdNumber          string    `json:"idnumber" gorm:"column:idnumber"`
	Age               int       `json:"age" gorm:"column:age"`
	Phone             string    `json:"phone" gorm:"column:phone"`
	PoliticalOutlook  string    `json:"political_outlook" gorm:"column:political_outlook"`
	Address           string    `json:"address" gorm:"column:address"`
	PersonalSignature string    `json:"personal_signature" gorm:"column:personal_signature"`
	CreateTime        time.Time `json:"createtime" gorm:"column:createtime"`
	UpdateTime        time.Time `json:"updatetime" gorm:"column:updatetime"`
	Integral          int       `json:"integral" gorm:"column:integral"`
}

type Activity struct {
	ID                    int       `json:"id" gorm:"column:id"`
	AdminID               int       `json:"admin_id" gorm:"column:admin_id"`
	Title                 string    `json:"title" gorm:"column:title"`
	Type                  string    `json:"type" gorm:"column:type"`
	FirstImg              string    `json:"first_img" gorm:"column:first_img"`
	CreateTime            time.Time `json:"createtime" gorm:"column:createtime"`
	RegistrationStarttime time.Time `json:"registration_starttime" gorm:"column:registration_starttime"`
	RegistrationDeadline  time.Time `json:"registration_deadline" gorm:"column:registration_deadline"`
	StartTime             time.Time `json:"starttime" gorm:"column:starttime"`
	EndTime               time.Time `json:"endtime" gorm:"column:endtime"`
	Num                   int       `json:"num" gorm:"column:num"`
	AlreadyNum            int       `json:"already_num" gorm:"column:already_num"`
	Value                 string    `json:"value" gorm:"column:value"`
	Integral              int       `json:"integral" gorm:"column:integral"`
	Look                  int       `json:"look" gorm:"column:look"`
	StatusFirst           int       `json:"status_first" gorm:"column:status_first"`
	StatusTwo             int       `json:"status_two" gorm:"column:status_two"`
	Status                int       `json:"status" gorm:"column:status"`
	Address               string    `json:"address" gorm:"column:address"`
}

type Eventregistration struct {
	ID         int       `json:"id" gorm:"column:id"`
	UserID     int       `json:"userid" gorm:"column:userid"`
	ActivityID int       `json:"activityid" gorm:"column:activityid"`
	AdminId    int       `json:"adminid" gorm:"column:adminid"`
	Status     int       `json:"status" gorm:"column:status"`
	CreateTime time.Time `json:"createtime" gorm:"column:createtime"`
	Imgs       string    `json:"imgs" gorm:"column:imgs"`
	UpdateTime time.Time `json:"updatetime" gorm:"column:updatetime"`
	Starttime  time.Time `json:"starttime" gorm:"column:starttime"`
	Endtime    time.Time `json:"endtime" gorm:"column:endtime"`
	Work       float64   `json:"work" gorm:"column:work"`
}

type Business struct {
	ID              int       `json:"id" gorm:"column:id"`
	UserID          int       `json:"userid" gorm:"column:userid"`
	BusinessLicense string    `json:"business_license" gorm:"column:business_license"`
	FirstImg        string    `json:"first_img" gorm:"column:first_img"`
	Name            string    `json:"name" gorm:"column:name"`
	Message         string    `json:"message" gorm:"column:message"`
	Address         string    `json:"address" gorm:"column:address"`
	Phone           string    `json:"phone" gorm:"column:phone"`
	StartTime       string    `json:"starttime" gorm:"column:starttime"`
	EndTime         string    `json:"endtime" gorm:"column:endtime"`
	CreateTime      time.Time `json:"createtime" gorm:"column:createtime"`
	Status          int       `json:"status" gorm:"column:status"`
}

type Clerk struct {
	ID         int       `json:"id" gorm:"column:id"`
	UserID     int       `json:"userid" gorm:"column:userid"`
	BusinessID int       `json:"businessid" gorm:"column:businessid"`
	StartTime  string    `json:"starttime" gorm:"column:starttime"`
	EndTime    string    `json:"endtime" gorm:"column:endtime"`
	CreateTime time.Time `json:"createtime" gorm:"column:createtime"`
}

type Commodity struct {
	ID         int       `json:"id" gorm:"column:id"`
	Title      string    `json:"title" gorm:"column:title"`
	FirstImg   string    `json:"first_img" gorm:"column:first_img"`
	Integral   int       `json:"integral" gorm:"column:integral"`
	Num        int       `json:"num" gorm:"column:num"`
	BusinessID int       `json:"businessid" gorm:"column:businessid"`
	Message    string    `json:"message" gorm:"column:message"`
	CreateTime time.Time `json:"createtime" gorm:"column:createtime"`
	Status     int       `json:"status" gorm:"column:status"`
}

type Order struct {
	ID          int       `json:"id" gorm:"column:id"`
	CommodityID int       `json:"commodityid" gorm:"column:commodityid"`
	CreateTime  time.Time `json:"createtime" gorm:"column:createtime"`
	UserID      int       `json:"userid" gorm:"column:userid"`
	Status      int       `json:"status" gorm:"column:status"`
	Businessid  int       `json:"businessid" gorm:"column:businessid"`
	UpdateTime  time.Time `json:"updatetime" gorm:"column:updatetime"`
}

type Admin struct {
	ID         int       `json:"id" gorm:"column:id"`
	UserID     int       `json:"userid" gorm:"column:userid"`
	Power      int       `json:"power" gorm:"column:power"`
	CreateTime time.Time `json:"createtime" gorm:"column:createtime"`
	Belong     string    `json:"belong" gorm:"column:belong"`
	Phone      string    `json:"phone" gorm:"column:phone"`
	StartTime  string    `json:"starttime" gorm:"column:starttime"`
	EndTime    string    `json:"endtime" gorm:"column:endtime"`
}
